Skip to content

Conversation

@dahorak
Copy link
Contributor

@dahorak dahorak commented Feb 2, 2018

It will create one job for each repository.
Each job perform following steps:

  • prepare build_server machine (or use existing one)
  • clone desired repository and checkout PR branch
  • update Release with git snapshot and PR number
  • build source package
  • submit srpm to copr and wait for the result
  • build RPM package from source package locally using mock
  • download built packages and prepare PR repo on artifacts.ci.centos.org

ssh root@${{build_server}} \
"cd ${{rwd}}/{package_name}; \
make update-release ;\
make gitversion ;\
Copy link
Contributor Author

@dahorak dahorak Feb 2, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TimothyAsir would it be possible to unify the Makefiles across the repos, so everywhere will be used make gitversion for updating the Release with timestamp and git hash?
Now there are two make targets for the same action - update-release and gitversion, so I have to call there both commands and expect, that one of them fails.

@dahorak dahorak force-pushed the pr-build-jobs branch 2 times, most recently from fa4f8c9 to f0734bf Compare February 5, 2018 09:24
@dahorak dahorak self-assigned this Feb 9, 2018
@dahorak
Copy link
Contributor Author

dahorak commented Feb 9, 2018

The Jobs are visible on tendrl-PR CentOS CI Jenkins page and are named Tendrl build: (PR) - <repo-name>.

It will create one job for each repository.
Each job perform following steps:
- prepare *build_server* machine (or use existing one)
- clone desired repository and checkout PR branch
- update *Release* with git snapshot and PR number
- build source package
- submit srpm to copr and wait for the result
- download built packages and prepare PR repo on artifacts.ci.centos.org
following two make targets are inconsistently used accross the Tendrl repos
- update-release
- gitversion
- source packages are not required in the PR rpm repo and use quite huge space
to tendrl-build-triggers-pr-builds.yml
- There seems to be some problem with enabling builds globally
  for whole the Tendrl organization, so adding specifically
  particular people to the admin list.
- it seems to send the notification to strange list of email addresses,
so disabling it
- limit the job execution only for PR updates
- to ensure PR builds have higher version and will not be overwritten
  by newest schnapshot packages from master branch
- github-pull-request:
admin-list:
- dahorak
white-list:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a way to input this rather than hardcoding?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nthomas-redhat it should be possible, to automatically fetch the list of people from the organization specified below in the org-list section, but there seems to be some problem with this and I'm not sure why it doesn't work and where might be the problem with that.
I'll try to check that once more and find some more information about that - that will be definitely the best solution.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nthomas-redhat I've found partial solution for this: it works for people with Public membership.

@r0h4n could you please check, if centos-ci user is part of Tendrl organization?
That might solve the problem with people with private membership in Tendrl org.
(I know, you already added it #6 (comment), but it seems like it is not there https://github.com/orgs/Tendrl/people...)

- for not merged PR, it will contain two hashes for both
  parents of the temporary merge to master commit (one is
  for commit from master branch, the second is the last commit
  in the PR)
- for merged PR, it will contain only the hash of the merge commit
  (or last commit from master)
- packages built in mock are not signed
- it is not possible to send emails to this list outside of RH (from
  ci@centos.org)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants